-- card: 3071 from stack: in -- bmap block id: 3307 -- flags: 0000 -- background id: 2776 -- name: ----- HyperTalk script ----- on openCard hide menuBar end openCard -- part 1 (button) -- low flags: 00 -- high flags: A003 -- rect: left=0 top=143 right=165 bottom=189 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Cast a Hexagram ----- HyperTalk script ----- on mouseUp global ncard put 6 into linePos click at loc of card button "Meditate / Clear" put 0 into ix1 put 0 into ix2 put 0 into in1 put 0 into in2 repeat with i = 1 to 6 put 50 into hand subtract 1 from hand if i = 1 then put "Stalk Bundle: " && hand into line 1 of card field Out else put ";" & hand after line 1 of card field Out end if repeat get the random of hand if it > 4 and it < (hand - 4) then exit repeat end repeat put it into left if i = 1 then put "Left Bundle: " && left into line 2 of card field Out else put ";" & left after line 2 of card field Out end if put (hand - left) into right subtract 1 from right if i = 1 then put "Right Bundle: " && right into line 3 of card field Out else put ";" & right after line 3 of card field Out end if put 1 into little if i = 1 then put "Little Finger:" && little into line 4 of card field Out else put "; " & little after line 4 of card field Out end if put (right - (4 * trunc(right / 4))) into ring if ring = 0 then put 4 into ring if i = 1 then put "Ring Finger: " && ring into line 5 of card field Out else put "; " & ring after line 5 of card field Out end if put (left - (4 * trunc(left / 4))) into center if center = 0 then put 4 into center if i = 1 then put "Middle Finger:" && center into line 6 of card field Out else put "; " & center after line 6 of card field Out end if put little + ring + center into pile if i = 1 then put "Reduced Pile: " && pile into line 7 of card field Out else put "; " & pile after line 7 of card field Out end if if pile = 9 then put 2 into sum if pile = 5 then put 3 into sum put hand - pile into hand put "," & hand after line 1 of card field Out repeat get the random of hand if it > 4 and it < (hand - 4) then exit repeat end repeat put it into left put "," & left after line 2 of card field Out put (hand - left) into right subtract 1 from right put "," & right after line 3 of card field Out put 1 into little put ", " & little after line 4 of card field Out put (right - (4 * trunc(right / 4))) into ring if ring = 0 then put 4 into ring put ", " & ring after line 5 of card field Out put (left - (4 * trunc(left / 4))) into center if center = 0 then put 4 into center put ", " & center after line 6 of card field Out put little + ring + center into pile put ", " & pile after line 7 of card field Out if pile = 8 then add 2 to sum if pile = 4 then add 3 to sum put hand - pile into hand put "," & hand after line 1 of card field Out repeat get the random of hand if it > 4 and it < (hand - 4) then exit repeat end repeat put it into left put "," & left after line 2 of card field Out put (hand - left) into right subtract 1 from right put "," & right after line 3 of card field Out put 1 into little put ", " & little after line 4 of card field Out put (right - (4 * trunc(right / 4))) into ring if ring = 0 then put 4 into ring put ", " & ring after line 5 of card field Out put (left - (4 * trunc(left / 4))) into center if center = 0 then put 4 into center put ", " & center after line 6 of card field Out put little + ring + center into pile put ", " & pile after line 7 of card field Out if pile = 8 then add 2 to sum if pile = 4 then add 3 to sum if i = 1 then put "The Lines: " && sum into line 8 of card field Out else put "; " & sum after line 8 of card field Out end if if sum = 6 then put "--- X ---" into line linePos of card field Lines if sum = 7 then put "---------" into line linePos of card field Lines if sum = 8 then put "--- ---" into line linePos of card field Lines if sum = 9 then put "----0----" into line linePos of card field Lines if i ≥ 1 and i ≤3 then put 2 * ix1 into ix1 if i ≥ 2 and i ≤4 then put 2 * in1 into in1 if i ≥ 3 and i ≤5 then put 2 * in2 into in2 if i ≥ 4 and i ≤6 then put 2 * ix2 into ix2 if sum = 6 or sum = 8 then if i ≥ 1 and i ≤3 then add 1 to ix1 if i ≥ 2 and i ≤4 then add 1 to in1 if i ≥ 3 and i ≤5 then add 1 to in2 if i ≥ 4 and i ≤6 then add 1 to ix2 end if subtract 1 from linePos end repeat put item 2 of line ix1 + 1 of card field Tri into jx1 put item 2 of line ix2 + 1 of card field Tri into jx2 get item 3 of line jx2 of card field Tri put "Above: " & it into lin1 get item 5 of line jx2 of card field Tri put " - The " & it after lin1 get item 3 of line jx1 of card field Tri put "Below: " & it into lin2 get item 5 of line jx1 of card field Tri put " - The " & it after lin2 get item 4 of line jx2 of card field Tri put lin1 & ", " & it into line 1 of card field Indx get item 4 of line jx1 of card field Tri put lin2 & ", " & it into line 2 of card field Indx put (8 * (jx1 - 1)) + jx2 into jx get item 2 of line jx of card field "Interp" put "Hexagram #" & it into lin3 put it + 1 into ncard put lin3 & " - " & item 3 of line it of card field "Interp" into line 3 of card field "Indx" put item 4 of line it of card field "Interp" into line 4 of card field "Indx" put item 2 of line in1 + 1 of card field Tri into jn1 put item 2 of line in2 + 1 of card field Tri into jn2 get item 3 of line jn2 of card field Tri put "N-1: " & it into lin5 get item 3 of line jn1 of card field Tri put "N-2: " & it into lin6 get item 5 of line jn2 of card field Tri put " - The " & it after lin5 get item 5 of line jn1 of card field Tri put " - The " & it after lin6 get item 6 of line jn2 of card field Tri put lin5 & ", " & it into line 5 of card field Indx get item 6 of line jn1 of card field Tri put lin6 & ", " & it into line 6 of card field Indx end mouseUp -- part 2 (field) -- low flags: 01 -- high flags: 2002 -- rect: left=43 top=35 right=137 bottom=475 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 0 -- font id: 4 -- text size: 9 -- style flags: 0 -- line height: 12 -- part name: Out -- part 3 (field) -- low flags: 01 -- high flags: 2002 -- rect: left=2 top=170 right=318 bottom=151 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 4 -- text size: 24 -- style flags: 256 -- line height: 24 -- part name: Lines ----- HyperTalk script ----- on mouseUp global ncard go to card ncard end mouseUp -- part 4 (button) -- low flags: 00 -- high flags: A003 -- rect: left=330 top=143 right=165 bottom=512 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Meditate / Clear ----- HyperTalk script ----- on mouseUp global linePos put 6 into linePos put empty into card field Lines put empty into card field Out put empty into card field Indx end mouseUp on mouseWithin get the random of 1000 set cursor to 2 end mouseWithin -- part 6 (field) -- low flags: 01 -- high flags: 0002 -- rect: left=157 top=172 right=317 bottom=512 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 209 -- text size: 18 -- style flags: 0 -- line height: 24 -- part name: Indx ----- HyperTalk script ----- on mouseUp global ncard go to card ncard end mouseUp -- part 8 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=482 top=46 right=67 bottom=506 -- title width / last selected line: 0 -- icon id / first selected line: 20098 / 20098 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Home ----- HyperTalk script ----- on mouseUp click at loc of card button "Meditate / Clear" go home end mouseUp -- part 15 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=7 top=40 right=74 bottom=37 -- title width / last selected line: 0 -- icon id / first selected line: 2507 / 2507 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Help ----- HyperTalk script ----- on mouseUp set scroll of card field id 16 to 0 show card field id 16 end mouseUp -- part 17 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=7 top=104 right=121 bottom=36 -- title width / last selected line: 0 -- icon id / first selected line: 1004 / 1004 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Commercial ----- HyperTalk script ----- on mouseUp show card field id 18 end mouseUp -- part 21 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=483 top=101 right=129 bottom=506 -- title width / last selected line: 0 -- icon id / first selected line: 1006 / 1006 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Quit ----- HyperTalk script ----- on mouseUp click at loc of card button "Meditate / Clear" doMenu "Quit HyperCard" end mouseUp -- part 18 (field) -- low flags: 81 -- high flags: 2004 -- rect: left=2 top=31 right=341 bottom=512 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 0 -- font id: 2 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Commercial1 ----- HyperTalk script ----- on mouseUp show card field "Commercial2" hide card field "Commercial1" end mouseUp -- part 19 (field) -- low flags: 81 -- high flags: 2004 -- rect: left=2 top=31 right=341 bottom=512 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 0 -- font id: 2 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Commercial2 ----- HyperTalk script ----- on mouseUp show card field "Commercial3" hide card field "Commercial2" end mouseUp -- part 20 (field) -- low flags: 81 -- high flags: 2004 -- rect: left=2 top=31 right=341 bottom=512 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 0 -- font id: 2 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Commercial3 ----- HyperTalk script ----- on mouseUp show card field "Commercial4" hide card field "Commercial3" end mouseUp -- part 22 (button) -- low flags: 00 -- high flags: 2000 -- rect: left=407 top=0 right=37 bottom=434 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 1 -- font id: 0 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Show all ----- HyperTalk script ----- on mouseUp show all cards end mouseUp -- part 16 (field) -- low flags: 81 -- high flags: 2007 -- rect: left=0 top=0 right=342 bottom=512 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 0 -- font id: 2 -- text size: 10 -- style flags: 0 -- line height: 13 -- part name: HelpScreen ----- HyperTalk script ----- on mouseUp set the scroll of card field HelpScreen to 0 hide card field HelpScreen end mouseUp -- part 7 (field) -- low flags: 80 -- high flags: 4007 -- rect: left=13 top=28 right=331 bottom=498 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 0 -- font id: 4 -- text size: 9 -- style flags: 0 -- line height: 12 -- part name: Interp -- part 24 (field) -- low flags: 80 -- high flags: 4002 -- rect: left=0 top=28 right=126 bottom=308 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 0 -- font id: 4 -- text size: 9 -- style flags: 0 -- line height: 12 -- part name: Tri -- part 26 (field) -- low flags: 81 -- high flags: 2004 -- rect: left=2 top=31 right=341 bottom=512 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 0 -- font id: 2 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Commercial4 ----- HyperTalk script ----- on mouseUp show card field "Commercial5" hide card field "Commercial4" end mouseUp -- part 27 (field) -- low flags: 81 -- high flags: 2004 -- rect: left=2 top=31 right=341 bottom=512 -- title width / last selected line: 0 -- icon id / first selected line: 0 / 0 -- text alignment: 0 -- font id: 2 -- text size: 12 -- style flags: 0 -- line height: 16 -- part name: Commercial5 ----- HyperTalk script ----- on mouseUp hide card field "Commercial5" end mouseUp -- part contents for card part 7 ----- text ----- 1,1,Ch'ien,The Creative 2,34,K'un,The Receptive 3,5,Chun,Difficulty at the Beginning 4,26,Mêng,Youthful Folly 5,11,Hsü,Waiting (Nourishment) 6,9,Sung,Conflict 7,14,Shih,The Army 8,43,Pi,Holding Together [Union] 9,25,Hsiao Ch'u,The Taming Power of the Small 10,51,Lü,Treading [Conduct] 11,3,T'ai,Peace 12,27,P'i,Standstill [Stagnation] 13,24,T'ung Jên,Fellowship with Men 14,42,Ta Yu,Posession in Great Measure 15,21,Ch'ien,Modesty 16,17,Yü,Enthusiasm 17,6,Sui,Following 18,40,Ku,Work on What Has Been Spoiled [Decay] 19,29,Lin,Approach 20,4,Kuan,Contemplation (View) 21,7,Shih Ho,Biting Through 22,59,Pi,Grace 23,64,Po,Splitting Apart 24,47,Fu,Return (The Turning Point) 25,33,Wu Wang,Innocence (The Unexpected) 26,62,Ta Ch'u,The Taming Power of the Great 27,39,I,The Corners of the Mouth (Providing Nourishment) 28,52,Ta Kuo,Preponderance of the Great 29,15,K'an,The Abysmal (Water) 30,53,Li, Fire 31,56,Hsien,Influence (Wooing) 32,31,Hêng,Duration 33,12,Tun,Retreat 34,16,Ta Chuang,The Power of the Great 35,8,Chin,Progress 36,23,Ming I,Darkening of the Light 37,2,Chia Jên,The Family [The Clan] 38,20,K'uei,Opposition 39,35,Chien,Obstruction 40,45,Hsieh,Deliverance 41,44,Sun,Decrease 42,32,I,Increase 43,48,Kuai,Break-through (Resoluteness) 44,18,Kou,Coming to Meet 45,46,Ts'ui,Gathering Together [Massing] 46,57,Shêng,Pushing Upward 47,50,K'un,Oppression (Exhaustion) 48,28,Ching,The Well 49,13,Ko,Revolution (Molting) 50,55,Ting,The Cauldron 51,63,Chên,The Arousing (Shock;Thunder) 52,22,Kên, Mountain 53,36,Chien,Development (Gradual Progress) 54,37,Kuei Mei,The Marrying Maiden 55,30,Fêng,Abundance [Fullness] 56,49,Lü,The Wanderer 57,10,Sun,The Gentle (The Penetrating;Wind) 58,54,Tui, Lake 59,60,Huan,Dispersion [Dissolution] 60,41,Chieh,Limitation 61,19,Chung Fu,Inner Truth 62,61,Hsiao Kuo,Preponderance of the Small 63,38,Chi Chi,After Completion 64,58,Wei Chi,Before Completion -- part contents for card part 16 ----- text ----- About the "I Ching" Stack Developed by John G. Cramer, author of TWISTOR. (See the "Message" button.) This stack, copyright 1988 by J. G. Cramer, is semi-freeware. It may be freely used, duplicated, and passed on, but may NOT be modified, except to correct bugs and to include minor improvements. In particular, the commerical "message" about my book TWISTOR must be included in all legal copies of this stack. WARNING: This stack, in its pristine state, occupies 58K. However, it will grow to 88K when used. Be sure enough disk space is available to accomodate this increase in size. • Brief instructions: (1) Put the curson over the Meditate/Clear button until you feel ready to cast a hexagram. The cursor in this position will be observed to vibrate, indicating that a continuous randomization is in progress. Click on the Meditate/Clear button if you wish to clear a previous hexagram reading. (2) Click on the Cast a Hexagram button. The stack will simulate repeated yarrow stalk manipulations and generate the six lines of the hexagram. The hexagram is identified by number and name, and the upper, lower and two nuclear trigrams of the hexagram are identified and interpreted in the Interpretation window. (3) At this point you should consult a translation of the I Ching for a full interpretation of the hexagram, including the signifigance of the moving lines. For a quick preliminary interpretation, you may click on the Hexagram or Interpretation windows. • Discussion: The I Ching is an ancient Taoist book of oracular wisdom. It is unique and remarkable. The great psychologist Carl Jung was so taken with the surprising predictive wisdom of the Oracle that he formulated the concept of synchronicity in an attempt to explain, in a western context, how random manipulations of yarrow stalks leading to readings from a 3000 year old book could yield advice and counsel that seems so appropriate to 20th century people and their problems. I first encountered the I Ching as a result of reading Philip K. Dick's The Man in the High Castle (it is essentially a character in the book), and have been facinated by it ever since. Let me make one thing perfectly clear. I do not believe in prophecy or fortune telling, or even in Jung's synchronicity, whether done with the use of the I Ching or otherwise. My view is that the human brain is in part a magnificent pattern-recognition engine. Given the opportunity, it will "see" many patterns that are interior to the mind rather than a part of the outside world. The I Ching provides a rich and varied matrix for such interior pattern recognition, and is thus actually a form of introspection, the recognition of things within ourselves which might be difficult, without the aid of the Oracle, to see. Thus the introspective aspects of the I Ching are far more important than the purely mechanical aspects that are provided by this stack. I wrote this stack as an exercise in HyperTalk programming, and also as a medium for publicising my first science fiction novel, TWISTOR which is to be published in hardcover in March, 1989 by William Morrow & Co. (See the "Message" button for more details.) The I Ching stack has two functions: first it casts a hexagram; second it interprets it. The casting is authentic. The interpretation provided in this stack is minimal, does not address the interpretation of changing lines, and should be used only as a preliminary first step in a serious interpretation. The use of a printed copy of the I Ching is strongly recommended for the latter. I prefer the hardcover Wilhelm/Baynes translation printed by Princeton University Press, although several less elegant translations are available in inexpensive paperback editions. There are two traditional ways of casting a hexagram for the I Ching, the "quick-and-dirty" three-coins method which is in the widest use because of its simplicity, and the more ancient and involved yarrow-stalk method which requires the repeated division and counting of a starting bundle of 50 yarrow stalks (think of the yarrow stalks as a bundle of long match sticks). At the end of each pass there will be 1 to 4 yarrow stalks held between the little and ring fingers, the ring and middle fingers, and the middle and index fingers. These are combined in a pile. This process is repeated with a reduced number of stalks until three such piles are produced. These are then combined to determine a line of the hexagram, . The two methods yield different results, in that the relative probabilities of the four possible lines are somewhat different in the two techniques. This stack employs the venerable yarrow-stalk method, substituting pseudo-random pure numbers and HyperTalk operations for the actual manipulation of the yarrow stalks. The numbers appearing in the Yarrow Stalk Manipulation window during the division indicate the stages in the process and the lines which are generated as a result. As the six lines are generated, the hexagram they signify is constructed from the bottom up and is shown in the Hexagram window. The lines generated are of four forms which are denoted by the digits 6, 7, 8, and 9 appearing in the upper window: • The 6 is a broken "moving" line of the form: --- x ---; • The 7 is a solid "fixed" line of the form: ---------; • The 8 is a broken "fixed" line of the form: --- ---; • The 9 is a solid "moving" line of the form: ----o----. For the principal interpretation of the hexagram, the two broken lines --- --- and --- x --- (6 and 8) are considered equivalent, as are the two solid lines --------- and ----o---- (7 and 9). However, an additional significance is attached to each moving line in the hexagram, which changes to its opposite. A simple interpretation of each of the 64 hexagrams is provided in the stack, and may be consulted by clicking on the Hexagram or Interpretation windows. For a full interpretation including the significance of the moving lines, the user must consult a printed copy of the I Ching. Each hexagram may be analyzed as an upper trigram (positions 4, 5, 6) and a lower trigram (positions 1,2,3), as well as two "nuclear" trigrams at (3,4,5) and (2,3,4). There are eight possible trigrams, and each has its own significance. These are given in the Interpretation window. -- part contents for card part 18 ----- text ----- AND NOW ... A WORD FROM THE STACK DEVELOPER John G. Cramer, author of TWISTOR Hello. I'm John Cramer. I wrote this stack, and I'm circulating it as semi-freeware. It's a nice stack, as I'm sure you'll agree, but, frankly, it's a medium for getting your attention long enough to tell you about my first novel, TWISTOR, which is being published in hardcover in March of 1989 by William Morrow & Co., Inc. New writers are advised to "write about what you know." Well, I know physics. I'm a Professor of Physics at the University of Washington in Seattle, where I teach and do research. I also write a bi-monthly science column, "The Alternate View", for ANALOG magazine. TWISTOR is set at my university and describes the process of scientific discovery -- its difficulty, its excitement, its importance, its impact. It's about Vickie, a graduate student, and David, a postdoc, working together on what seems to be fairly standard physics research until they discover an unexpected new phenomenon, the Twistor Effect. We follow the Twistor Effect from its accidental discovery through to full understanding of its implications, which takes David right out of this universe and into another one. (click for more) -- part contents for card part 19 ----- text ----- I wrote TWISTOR because it's the kind of hard science fiction story I enjoy reading, the kind I always search for in the SF sections of bookstores and libraries. It's perhaps obvious that I should like what I write . However, some of the foremost writers of the science fiction field have recently read TWISTOR. You may be interested in what they have to say about it: "Finally, the most exciting novel about the cutting edge of physics since TIMESCAPE. TWISTOR takes you into the lab and through the world of far-out theory, all in a swooping story of adventure." -- David Brin "A fine hard-science fiction thriller, very enjoyable. TWISTOR is an auspicious debut for Dr. John Cramer." -- Greg Bear (click for more) -- part contents for card part 20 ----- text ----- "TWISTOR is a rare blend of high imagination and fun by a writer who understands how research really works, both on the scientific and the human levels. It made me feel as if I were back in the lab myself -- and glad to be there." -- Stanley Schmidt "John Cramer's TWISTOR is a wonderful romp through the several universes of real science, from the thin abstraction of particle theory to the grubby, greasy, problem-plagued experimental laboratory, and on to the intricacies of departmental politics and the pitfalls of institutional funding. Before Cramer has finished telling his ingenious tale, TWISTOR has taken us right out of this world into a plausible universe next door. The ideas are as startlingly original as anything in the work of Robert Forward or James P. Hogan, with the added attraction of likeable flesh and blood characters and an order of magnitude better storytelling." -- Paul Preuss (click for more) -- part contents for card part 24 ----- text ----- 1,1,Ch'ien,Heaven,Creative,strong 2,8,Chên,Thunder,Arousing,inciting movement 3,7,K'an,Water,Abysmal,dangerous 4,2,Kên,Mountain,Quiet,resting 5,6,K'un,Earth,Receptive,devoted/yielding 6,3,Sun,Wind/Wood,Gentle,penetrating 7,4,Li,Fire,Clinging,life-giving 8,5,Tui,Lake,Joyous,joyful -- part contents for card part 26 ----- text ----- "TWISTOR tells an exciting story that employs concepts even more exciting. Authors who not only know science but practice it are all too rare. John Cramer's distinguished career as a physicist enables him to give this novel a ring of authenticity, not only scientific, but human." -- Poul Anderson "John Cramer's first novel has fascinating extrapolation, strong characters, and accelerating suspense. Once you've read TWISTOR, Cramer will be on your Must-Read list." -- F. M. Busby "John Cramer's first science fiction novel has two great things going for it. His scientific background includes degrees in physics, and he has been teaching the subject at university level. And somehow he also learned to intertwine his far-reaching knowledge with a wonderful, exciting story. TWISTOR may well be the best SF novel of the year." -- A. E. van Vogt (click for more) -- part contents for card part 27 ----- text ----- "TWISTOR marks the arrival of a major new science fiction talent. John Cramer knows science, and people. He possesses to a phenomenal degree the wit, ingenuity, and soaring imagination all of us hope for; and they make TWISTOR a book no intelligent reader should miss." -- Gene Wolfe "True hard science fiction -- deftly done, with plenty of fine surprises." -- Gregory Benford But you don't have to take the word of these distinguished authors either. In March, 1989, TWISTOR will be available in hardcover in better bookstores. Pick up a copy and see for yourself. And here's some advice from John Cramer, the book collector. Because TWISTOR is a first novel, its press run will be fairly small. First edition/printings promise to soon become rare collector's items. So act soon, while copies are still available. John G. Cramer 12/15/88 (click to return to stack)